/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */

package com.kurvykurvy.page;

import java.util.ArrayList;

/**
 *
 * @author HY
 */
public interface Book {
    public BookTemplate getBookTemplate();

    public PageSpread[] getPageSpreadArray();
    public ArrayList<PageSpread> getPageSpreads();
    public PageSpread getFirstPageSpread();
    public PageSpread getNextPageSpread( PageSpread spread );
    public PageSpread getPreviousPageSpread( PageSpread spread );
    public PageSpread getPageSpread( int page );

    public PageSpread createNewPageSpread();
    public PageSpread createNewPageSpread( PageLayoutTemplate left, PageLayoutTemplate right );

    public void addPageSpread( PageSpread spread );
    public void addPageSpread( PageSpread spread, int index );
    public void addPageSpreadBefore( PageSpread spread, PageSpread before );
    public void addPageSpreadAfter( PageSpread spread, PageSpread after );

    public void removePageSpread( PageSpread spread );
    public void removePageSpread( ArrayList<PageSpread> spreads );
    public void removePageSpread( int from, int to );

    public void clearPages();

}
